package service

import (
	"errors"
	"gorm.io/gorm"
	"week1/textrpc/models"
)

// CreateBarrage todo 文章评论
func CreateBarrage(barrage *models.TextBarrage) error {
	return models.InitMysql(func(DB *gorm.DB) error {
		return DB.Create(&barrage).Error
	})
}
func GetBarrage() ([]*models.TextBarrage, error) {
	var textAll []*models.TextBarrage
	return textAll, models.InitMysql(func(DB *gorm.DB) error {
		res := DB.Find(&textAll)
		if res.RowsAffected == 0 {
			return errors.New("无数据")
		}
		return nil
	})

}

// todo 举报
func CreateJvBao(bao *models.JvBao) error {
	return models.InitMysql(func(DB *gorm.DB) error {
		return DB.Create(&bao).Error
	})
}

//// GetBarrageAll todo 无限极评论
//func GetBarrageAll(pid int) ([]*textrpc.BarrageData, error) {
//	var textAll []models.TextBarrage
//	err := models.InitMysql(func(DB *gorm.DB) error {
//		res := DB.Where("pid = ?", pid).Find(&textAll)
//		if res.RowsAffected == 0 {
//			return errors.New("无数据")
//		}
//		return nil
//	})
//	if err != nil {
//		return nil, err
//	}
//	var textsAll []*textrpc.BarrageData
//	for _, v := range textAll {
//		l := B(v)
//		textsAll = append(textsAll, l)
//	}
//	for _, i := range textsAll {
//		list, err := GetBarrageAll(int(i.Id))
//		if err != nil {
//			return nil, err
//		}
//		i.Data = list
//	}
//	return textsAll, nil
//}
//
//// B todo 新结构体赋值
//func B(barrage models.TextBarrage) *textrpc.BarrageData {
//	return &textrpc.BarrageData{
//		Id:      int32(barrage.ID),
//		TextId:  barrage.TextId,
//		UserId:  barrage.Userid,
//		Comment: barrage.Comment,
//		Pid:     barrage.Pid,
//		Data:    make([]*textrpc.BarrageData, 0),
//	}
//}
